CC = gcc

XX = c++
CFLAGS = -Wall -O -g
TARGET = test.exe

%.o: %.c
    $(CC) $(CFLAGS) -c $< -o $@
%.o:%.cpp
    $(XX) $(CFLAGS) -c $< -o $@
SOURCES = $(wildcard *.c *.cpp)
OBJS = $(patsubst %.c,%.o,$(patsubst %.cpp,%.o,$(SOURCES)))
$(TARGET) : $(OBJS)
    $(XX) $(OBJS) -o $(TARGET)
    chmod a+x $(TARGET)

clean:
    rm -rf *.o $(TARGET)
